package com.yuetong.business.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yuetong.common.annotation.Excel;
import com.yuetong.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 指派维修任务，用于记录维修任务的指派和完成情况对象 yt_assigned_task
 *
 * @author  卓晓君
 * @date 2025-03-07
 */
public class YtAssignedTask extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 任务ID */
    private Long taskId;

    /** 记录ID */
    @Excel(name = "记录ID")
    private Long recordId;

    /** 员工ID */
    @Excel(name = "员工ID")
    private Long userId;

    /** 指派日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "指派日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date assignedDate;

    /** 完成日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "完成日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date completionDate;

    /** 反馈 */
    @Excel(name = "反馈")
    private String feedback;

    /** 指派状态 */
    @Excel(name = "指派状态")
    private String status;

    /** 反馈照片 */
    @Excel(name = "反馈照片")
    private String images;

    /** 排序字段 */
    @Excel(name = "排序字段")
    private Long sortOrder;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    public void setTaskId(Long taskId)
    {
        this.taskId = taskId;
    }

    public Long getTaskId()
    {
        return taskId;
    }
    public void setRecordId(Long recordId)
    {
        this.recordId = recordId;
    }

    public Long getRecordId()
    {
        return recordId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setAssignedDate(Date assignedDate)
    {
        this.assignedDate = assignedDate;
    }

    public Date getAssignedDate()
    {
        return assignedDate;
    }
    public void setCompletionDate(Date completionDate)
    {
        this.completionDate = completionDate;
    }

    public Date getCompletionDate()
    {
        return completionDate;
    }
    public void setFeedback(String feedback)
    {
        this.feedback = feedback;
    }

    public String getFeedback()
    {
        return feedback;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setImages(String images)
    {
        this.images = images;
    }

    public String getImages()
    {
        return images;
    }
    public void setSortOrder(Long sortOrder)
    {
        this.sortOrder = sortOrder;
    }

    public Long getSortOrder()
    {
        return sortOrder;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("taskId", getTaskId())
            .append("recordId", getRecordId())
            .append("userId", getUserId())
            .append("assignedDate", getAssignedDate())
            .append("completionDate", getCompletionDate())
            .append("feedback", getFeedback())
            .append("status", getStatus())
            .append("images", getImages())
            .append("sortOrder", getSortOrder())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
